package com.ln.property_control.service;

import com.ln.property_control.pojo.*;

import java.util.List;
import java.util.Map;

/*盘点计划业务处理层*/
public interface CheckPlanService {
    /*展示所有资产计划的方法*/
    Map<String,Object> selecyAllPlan(Integer page , Integer  limit);


    /*展示资产计划详情*/
    CheckPlanVo selectByCheckID(String checkplanID);

    /*列举指定资产计划下涉及的资产*/
    List<PropertyVo> selectPropertyByID(String checkplanID);

    /*获取到所有的部门*/
    List<Department> selectDeByID();

    /*获取到所有资产类型*/
    List<PropertyVo> selectProTypeByID();

    /*获取到所有计划类型*/
    List<CheckPlanType> selectCheckTypeByID();

    /*根据部门与类型查询到指定资产*/
    List<PropertyVo> selectByDepIDorTypeID(Integer property_dep_id,Integer property_tid);


    /*新增盘点计划*/
    void  addCheckPlan(CheckPlan checkPlan);

    /*更改指定计划的状态*/
    void updateCheck(CheckPlan checkPlan);

    /*将已完成的计划信息添加到历史表中*/
    int insertAccPlan(History_plan history_plan);

    /*将完成的计划改头换面*/
    void exmaCheckPlan(CheckPlan checkPlan,History_plan history_plan);

    /*获取所有日志*/
    Map<String,Object> selectHistory(Integer page , Integer  limit,String approver_time, String history_plan_name);

    /*公司资产总览*/
    Map<String,Object> selectAllProperty(Integer page , Integer  limit,Integer present_dep_id, String property_name);

    /*查询所有部门*/
    List<Department> findDep();

    /*个人审批*/
    Map<String,Object> selectByDep(Integer page, Integer limit,Integer did,Integer rankNum);

    /*查询所有的资产类型*/
    List<PropertyType> findPropertyType();

    /*添加备注表*/
    void  addResMar(Result_remark result_remark);

    /*获取到指定计划下的盈亏备注*/
    List<Result_remark> findCheckID(String check_id);
}
